package jmu.edu.yjc.controller;

import jmu.edu.yjc.Utils.CodeUtil;
import jmu.edu.yjc.domain.ResponseResult;
import jmu.edu.yjc.service.CodeService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@RestController
@RequestMapping("/code")
public class CodeController {
    @Resource
    private CodeService codeService;
    @GetMapping("/getVerify")
    public void getVerify(HttpServletRequest request, HttpServletResponse response) {
        try {
            response.setContentType("image/jpeg");//设置相应类型,告诉浏览器输出的内容为图片
            response.setHeader("Pragma", "No-cache");//设置响应头信息，告诉浏览器不要缓存此内容
            response.setHeader("Cache-Control", "no-cache");
            response.setDateHeader("Expire", 0);
            CodeUtil randomValidateCode = new CodeUtil();
            randomValidateCode.getRandcode(request, response);//输出验证码图片方法
        } catch (Exception e) {
            e.printStackTrace();
//            logger.error("获取验证码失败>>>>   ", e);
        }
    }
    @GetMapping("/getRegisterCode")
    public ResponseResult getRegisterCode(HttpServletRequest request, String email, String userName) {
        return codeService.getRegisterCode(request, email, userName);
    }
    @GetMapping("/getForgiveCode")
    public ResponseResult getForgiveCode(HttpServletRequest request,  String email, String userName) {
        return codeService.getForgiveCode(request, email, userName);
    }
}
